const main = require('../main/main');
const datbase = require('../main/datbase');
const printInventory = require('../main/main');
describe('pos', function () {
    var allItems;
    var inputs,inpust1;

    beforeEach(function () {
        allItems = datbase.loadAllItems();
        inputs = [
            'ITEM000001',
            'ITEM000001',
            'ITEM000001',
            'ITEM000001',
            'ITEM000001',
            'ITEM000003-2',
            'ITEM000005',
            'ITEM000005',
            'ITEM000005'
        ];
        inputs1 = [
            'ITEM000002-6',
            'ITEM000004-3',
        ];
    });

    it('should print correct text1', function () {

        spyOn(console, 'log');

        printInventory(inputs);

        var expectText =
            '***<没钱赚商店>购物清单***\n' +
            '名称：雪碧，数量：5瓶，单价：3.00(元)，小计：12.00(元)\n' +
            '名称：荔枝，数量：2斤，单价：15.00(元)，小计：30.00(元)\n' +
            '名称：方便面，数量：3袋，单价：4.50(元)，小计：9.00(元)\n' +
            '----------------------\n' +
            '挥泪赠送商品：\n' +
            '名称：雪碧，数量：1瓶\n' +
            '名称：方便面，数量：1袋\n' +
            '----------------------\n' +
            '总计：51.00(元)\n' +
            '节省：7.50(元)\n' +
            '**********************';

        expect(console.log).toHaveBeenCalledWith(expectText);
    });

    it('should print correct text2', function () {
        
                spyOn(console, 'log');
        
                printInventory(inputs1);
        
                var expectText =
                    '***<没钱赚商店>购物清单***\n' +
                    '名称：苹果，数量：6斤，单价：5.50(元)，小计：33.00(元)\n' +
                    '名称：电池，数量：3个，单价：2.00(元)，小计：6.00(元)\n' +
                    '----------------------\n' +
                    '挥泪赠送商品：\n' +
                    '----------------------\n' +
                    '总计：39.00(元)\n' +
                    '节省：0.00(元)\n' +
                    '**********************';
        
                expect(console.log).toHaveBeenCalledWith(expectText);
            });
});
